package com.ray.activiti.service;

import java.util.List;
import java.util.Map;

import com.ray.activiti.table.entity.ExtendActNodeuser;
import com.zjhc.flyhong.common.function.operator.LoginUser;
import com.zjhc.flyhong.common.web.Result;

/**
 * 节点可选人
 * @Auther ray  qray686898@163.com
 * @Date 2017/12/28
 * @代码参考或来自  https://github.com/huangxianyuan/hxyFrame
 */
public interface ExtendActNodeuserService {
	
	ExtendActNodeuser queryObject(String id);
	
	List<ExtendActNodeuser> queryList(Map<String, Object> map);
	
	int queryTotal(Map<String, Object> map);
	
	void save(ExtendActNodeuser extendActNodeuser);
	
	void update(ExtendActNodeuser extendActNodeuser);
	
	void delete(String id);
	
	void deleteBatch(String[] ids);
    /**
     * 查询节点对应的id  
     * @param value
     * @param nodeId
     * @return
     */
	List<String> queryIds(String value, String nodeId);
    /**
     * 新增用户
     * @param userId
     * @param nodeId
     * @param user
     * @return
     */
	Result<Object> addUser(String userId, String nodeId, LoginUser user);
    /**
     * 删除用户
     * @param userId
     * @param nodeId
     * @param user
     * @return
     */
	Result<Object> deleteUser(String userId, String nodeId, LoginUser user);

	 /**
     * 新增角色
     * @param userId
     * @param nodeId
     * @param user
     * @return
     */
	Result<Object> addRole(String roleId, String nodeId, LoginUser user);
    /**
     * 删除角色
     * @param userId
     * @param nodeId
     * @param user
     * @return
     */
	Result<Object> deleteRole(String roleId, String nodeId, LoginUser user);

}
